import pymysql

# 模拟服务器 直接连入数据库
while True:
    # 获取连接
    db = pymysql.connect(host='49.233.39.160',port=3306,user='user',password='leboAa!#$123',db='lebo16',charset='utf8')
    # 获取游标后,能访问数据库了
    cursor = db.cursor(pymysql.cursors.DictCursor)
    # 判断输入正确账号 密码则能登录  数字模拟
    pd = int(input('你好，登录系统：1，注册 2，登录,3,退出，输入其他内容请重新输入内容'))
    if pd == 1:
        print('-----------------注册-----------------------')
        user = input('姓名：')
        passwd = input('密码：')
        # 查询数据库判断账号是否已经注册
        sql = "select * from students17 where card = %s and name = %s;"
        print(sql)
        count = cursor.execute(sql,[passwd,user])

        if count == 1:
            print('用户名已存在，请直接登录')
        else:
            # 注册，输入添加账号密码进入数据库'
            sql = "insert into students17(card,name) values(%s, %s);"
            # 打印sql，验证功能
            print(sql)
            cursor.execute(sql, [passwd, user])
            # 增删改需要数据库commit
            db.commit()
            print('注册成功')
        cursor.close()
    elif pd == 2:
        print('-----------------登录-----------------------')
        user = input('姓名：')
        passwd = input('密码：')
        # 查询数据库判断账号是否已经注册
        sql = "select * from students17 where card = %s and name = %s;"
        print(sql)
        count = cursor.execute(sql,[passwd,user])

        if count == 1:
            print('登录成功')
            # 查询成功，可打印查询的内容
            ret = cursor.fetchone()
            print(ret)
        else:
            print('用户名或密码输入错误，请重新输入')
        cursor.close()
    elif pd == 3:
        print("退出")
        break
    else:
        print("输入错误，重新输入")
        # 跳过本次循环，进入下次循环
        continue
